From c47ca5975f6bae3a39a1536f7e13554afe026470 Mon Sep 17 00:00:00 2001 From: Anders Carlsson Date: Mon, 8 Mar 2004 01:55:43 +0000 Subject: [PATCH] Set the base folder path in the entry. 2004-03-08 Anders Carlsson * gtk/gtkfilechooserentry.c: (_gtk_file_chooser_entry_set_base_folder): Set the base folder path in the entry. --- ChangeLog | 6 ++++++ ChangeLog.pre-2-10 | 6 ++++++ ChangeLog.pre-2-4 | 6 ++++++ ChangeLog.pre-2-6 | 6 ++++++ ChangeLog.pre-2-8 | 6 ++++++ gtk/gtkfilechooserentry.c | 14 +++++++++++++- 6 files changed, 43 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 58a311adf4..03b8fe17cf 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2004-03-08 Anders Carlsson + + * gtk/gtkfilechooserentry.c: + (_gtk_file_chooser_entry_set_base_folder): + Set the base folder path in the entry. + 2004-03-08 Christian Neumair * tests/testentrycompletion.c: Fix typo. diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 58a311adf4..03b8fe17cf 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,9 @@ +2004-03-08 Anders Carlsson + + * gtk/gtkfilechooserentry.c: + (_gtk_file_chooser_entry_set_base_folder): + Set the base folder path in the entry. + 2004-03-08 Christian Neumair * tests/testentrycompletion.c: Fix typo. diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 58a311adf4..03b8fe17cf 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,9 @@ +2004-03-08 Anders Carlsson + + * gtk/gtkfilechooserentry.c: + (_gtk_file_chooser_entry_set_base_folder): + Set the base folder path in the entry. + 2004-03-08 Christian Neumair * tests/testentrycompletion.c: Fix typo. diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 58a311adf4..03b8fe17cf 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,9 @@ +2004-03-08 Anders Carlsson + + * gtk/gtkfilechooserentry.c: + (_gtk_file_chooser_entry_set_base_folder): + Set the base folder path in the entry. + 2004-03-08 Christian Neumair * tests/testentrycompletion.c: Fix typo. diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 58a311adf4..03b8fe17cf 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,9 @@ +2004-03-08 Anders Carlsson + + * gtk/gtkfilechooserentry.c: + (_gtk_file_chooser_entry_set_base_folder): + Set the base folder path in the entry. + 2004-03-08 Christian Neumair * tests/testentrycompletion.c: Fix typo. diff --git a/gtk/gtkfilechooserentry.c b/gtk/gtkfilechooserentry.c index 383a2e191a..72df4a5043 100644 --- a/gtk/gtkfilechooserentry.c +++ b/gtk/gtkfilechooserentry.c @@ -514,11 +514,23 @@ void _gtk_file_chooser_entry_set_base_folder (GtkFileChooserEntry *chooser_entry, const GtkFilePath *path) { + char *text; + if (chooser_entry->base_folder) gtk_file_path_free (chooser_entry->base_folder); chooser_entry->base_folder = gtk_file_path_copy (path); - gtk_file_chooser_entry_changed (GTK_EDITABLE (chooser_entry)); + + /* We first try to get the path as a filename, and then use an uri if that fails */ + text = gtk_file_system_path_to_filename (chooser_entry->file_system, path); + if (!text) + text = gtk_file_system_path_to_uri (chooser_entry->file_system, path); + + gtk_entry_set_text (GTK_ENTRY (chooser_entry), text); + + g_free (text); + + gtk_editable_select_region (GTK_EDITABLE (chooser_entry), 0, -1); } /** -- 2.30.2